﻿<%@ Page Culture="auto" UICulture="auto" Title="Setting up MForm environment" Language="C#"
    MasterPageFile="~/Site.Master" AutoEventWireup="true" CodeBehind="Environment.aspx.cs"
    Inherits="BM.Tools.WebControls.MForm.Example.Start.Environment" %>

<%@ Register TagPrefix="mftitle" Namespace="BM.Tools.WebControls.MForm.Controls.Titles"
    Assembly="BM.Tools.WebControls.MForm" %>
<asp:Content ID="Content1" ContentPlaceHolderID="Description" runat="server">    
    <p>
        In the
        <asp:HyperLink runat="server" NavigateUrl="~/Start/MyFirstMFormPage.aspx" Text="previous chapter" />&nbsp;you
        have created your first MForm control. However you did that in the project where
        everything was already set up. If you plan to use MForm in your own project, you
        will need to set up the environment.
    </p>
    <div class="Section">
        <mftitle:TitleControl runat="server" Text="MForm stylesheets" />
        <p>
            Some default stylesheets have been prepared to make MForm look appealing. These
            stylesheets are divided into several files, each file controls different parts of
            the MForm framework.
        </p>
        <p>
            The most important stylesheet that is always consumed by the MForm controls is:
        </p>
        <ul>
            <li><code>~/Resources/MForm/Common/Css/main.css</code>,</li>
        </ul>
        <p>
            Depending on which MForm features you use, you will need some of the following stylesheets:
        </p>
        <ul>
            <li><code>~/Resources/MForm/Title/Css/main.css</code> - stylesheet used with the MForm
                <span class="Important">Title</span> control,</li>
            <li><code>~/Resources/MForm/VerticalTableDisplay/Css/main.css</code> - stylesheet used
                with the <span class="Important">VerticalTableDisplayModifier</span>,</li>
            <li><code>~/Resources/MForm/HorizontalTableDisplay/Css/main.css</code> - stylesheet
                used with the <span class="Important">HorizontalTableDisplayModifier</span>,</li>
            <li><code>~/Resources/MForm/Leaf/Css/main.css</code> - stylesheet used with the MForm
                <span class="Important">Leaf item</span> control,</li>
            <li><code>~/Resources/MForm/ValueHandler/Css/main.css</code> - stylesheet used with
                standard MForm <span class="Important">value handlers</span>,</li>
            <li><code>~/Resources/MForm/BubbleTooltip/Css/main.css</code> - stylesheet used with
                the <span class="Important">BubbleTooltipAddition</span>,</li>
            <li><code>~/Resources/MForm/ErrorLabel/Css/main.css</code> - stylesheet used with the
                <span class="Important">error descriptions</span>,</li>
            <li><code>~/Resources/MForm/Tabs/Css/main.css</code> - stylesheet used with the MForm
                <span class="Important">tab functionality</span>,</li>
        </ul>
        <p>
            There are also some other stylesheets defined in this project that are not necessary
            for the MForm framework, but you may find them interesting:
        </p>
        <ul>
            <li><code>~/Resources/Controls/Column/Css/main.css</code> - stylesheet used to display
                MForm leaf items in <span class="Important">two columns</span>,</li>
        </ul>
        <p>
            Finally, this project uses its own stylesheets that affect the display. If you just
            want to start your new project and you are happy with this project's display, you
            can use it too.
        </p>
        <ul>
            <li><code>~/Resources/Example/Layout/Css/main.css</code> - stylesheet that defines the
                standard page layout,</li>
            <li><code>~/Resources/Example/Typography/Css/main.css</code> - stylesheet that defines
                the standard page typography,</li>
        </ul>
        <div class="Remark">
            <p>
                You are encouraged to modify the stylesheets while preserving the provided file
                structure. Then you can share the stylesheets with the community. We plan to provide
                a public space with MForm "themes".</p>
        </div>
    </div>
    <div class="Section">
        <mftitle:TitleControl runat="server" Text="Libraries needed to use MForm" />
        <p>
            The following libraries should be added to the project that uses MForm control:</p>
        <ul>
            <li><span class="namespace">BM.Tools.WebControls.MForm</span> - MForm library</li>
            <li><span class="namespace">BM.Tools.Xml.Schema</span> - a library that facilitates
                reading XML schema files. It is needed to run the MForm generator</li>
            <li><span class="namespace">AjaxControlToolkit</span> - MForm controls use some concepts
                from this library</li>
        </ul>
    </div>
    <div class="Section">
        <mftitle:TitleControl runat="server" Text="MForm controls namespaces" />
        <p>
            The following namespaces may be used inside .aspx pages:
        </p>
        <ul>
            <li><span class="namespace">BM.Tools.WebControls.MForm.Controls</span> - the namespace
                for MForm definition controls.</li>
            <li><span class="namespace">BM.Tools.WebControls.MForm.Controls.Additions</span> - the
                namespace for MForm Addition controls.</li>
            <li><span class="namespace">BM.Tools.WebControls.MForm.Controls.Additions.Actions</span>
                - the namespace for MForm actions.</li>
            <li><span class="namespace">BM.Tools.WebControls.MForm.Controls.Modifiers</span> - the
                namespace for MForm Modifier controls.</li>
            <li><span class="namespace">BM.Tools.WebControls.MForm.Controls.ValueHandlers</span>
                - the namespace for MForm value handler controls.</li>
        </ul>
        <p>
            You can also simply paste in the page register part:</p>
        <div class="Remark">
            <p>
                <span class="namespace">&lt;%@</span> Register <code>Assembly</code>="BM.Tools.WebControls.MForm"
                <code>Namespace</code>="BM.Tools.WebControls.MForm.Controls" <code>TagPrefix</code>="mf"
                <span class="namespace">%&gt;</span>
                <br />
                <span class="namespace">&lt;%@</span> Register <code>Assembly</code>="BM.Tools.WebControls.MForm"
                <code>Namespace</code>="BM.Tools.WebControls.MForm.Controls.Additions" <code>TagPrefix</code>="mfadd"
                <span class="namespace">%&gt;</span>
                <br />
                <span class="namespace">&lt;%@</span> Register <code>Assembly</code>="BM.Tools.WebControls.MForm"
                <code>Namespace</code>="BM.Tools.WebControls.MForm.Controls.Additions.Actions" <code>
                    TagPrefix</code>="mfac" <span class="namespace">%&gt;</span>
                <br />
                <span class="namespace">&lt;%@</span> Register <code>Assembly</code>="BM.Tools.WebControls.MForm"
                <code>Namespace</code>="BM.Tools.WebControls.MForm.Controls.Modifiers" <code>TagPrefix</code>="mfmod"
                <span class="namespace">%&gt;</span>
                <br />
                <span class="namespace">&lt;%@</span> Register <code>Assembly</code>="BM.Tools.WebControls.MForm"
                <code>Namespace</code>="BM.Tools.WebControls.MForm.Controls.ValueHandlers" <code>TagPrefix</code>="mfvh"
                <span class="namespace">%&gt;</span></p>
        </div>
    </div>
</asp:Content>
